import nibabel as nib
import matplotlib.pyplot as plt
import numpy as np

#加载.nii.gz文件
img=nib.load('BraTS20_Training_001_flair.nii')
mask=nib.load('BraTS20_Training_001_seg.nii')
#获取图像数据
image=img.get_fdata()
mask = mask.get_fdata()
# 选择一个切片进行显示（例如，第45个切片）
slice_index = 45
image_slice = image[:, :, slice_index]
mask_slice = mask[:, :, slice_index]

# 为了更好地可视化，我们可以将掩膜乘以一个较大的值，以便在叠加时更清晰地看到它
# 这里我们将掩膜的值设置为1（白色）和0.5的透明度
mask_slice_visual = (mask_slice * 255).astype(np.uint8)  # 将掩膜值放大到0-255范围

# 显示叠加的图像和掩膜
fig, ax = plt.subplots(1, 1, figsize=(8, 8))

# 首先显示图像切片
ax.imshow(image_slice, cmap='gray')

# 然后叠加掩膜切片，设置透明度
ax.imshow(mask_slice_visual, cmap='gray', alpha=0.5)

# 设置标题
ax.set_title(f'Slice {slice_index}: Image with Overlay Mask')

# 显示图像
plt.show()
